package com.transcasafe.eanpay.core.service.model;

import lombok.Getter;
import lombok.Setter;

/**
 * Decision Manager需要
 * 产品信息
 * n从0开始
 */
@Setter
@Getter
public class ProductInfoInRequest {

    private String unitPrice; // 单个Product的价格，对应item_{n}_unitPrice，Decision Manager需要
    /**
     * Product名称，对应item_{n}_productName，Decision Manager需要
     * productCode为：default, shipping_only, handling_only, or shipping_and_handling 非必填
     */

    private String productName;
    /**
     * Product的数量，对应item_{n}_quantity，Decision Manager需要
     * 默认：1
     */

    private Integer quantity = 1; // Product数量，对应item_{n}_quantity，Decision Manager需要
    /**
     * Product的SKU，对应item_{n}_productSKU，Decision Manager需要
     * 只接受数字和字母
     * productCode为：default, shipping_only, handling_only, or shipping_and_handling 非必填
     */

    private String productSKU;
    /**
     * 产品编码，对应item_{n}_productCode，Decision Manager需要,默认为：default
     * Possible values:
     * adult_content：成人内容。
     * coupon：优惠券适用于整个订单。
     * default：产品代码的默认值。该值 默认当请求消息不包含产品代码的值时使用。
     * electronic_good：软件以外的电子产品。
     * electronic_software：以电子方式（而不是通过磁盘或其他媒体）分发的软件。
     * gift_certificate：礼券。
     * handling_only：您向客户收取的用于支付管理销售成本的费用。
     * service：您为客户提供的服务。
     * shipping_and_handling：手续费是您向客户收取的费用，用于支付管理销售成本。运费是将产品运送给客户的费用。
     * shipping_only：将有形个人财产从您的所在地运送到客户处的费用。您必须保留文件，以明确确定财产所有权从您转移到客户的地点。
     * subscription：订阅网站或其他内容。
     */

    private String productCode;
}
